#include <stdio.h> 
#include<unistd.h>
#include<sys/types.h>



// 查看父进程和子进程
//int main()
//{
//    pid_t pid = getpid();
//    pid_t ppid = getppid();
//
//    while(1)
//    {
//        printf("proc,i am process,my pid is:%d,my ppid is:%d\n",pid,ppid);
//        sleep(1);
//    }
//
//    return 0;
//}



// 查看fork效果 
//int main()
//{
//    printf("i am process,pid:%d,ppid:%d\n",getpid(),getppid());
//
//    pid_t id = fork();
//    (void)id; 
//
//    printf("i am 分支,pid:%d,ppid:%d\n",getpid(),getppid());
//    sleep(1);
//
//    return 0;
//} 



// 证明数据是独立保存的 
int gavl = 0;

int main()
{
    pid_t id = fork();
    
    if(id>0)
    {
        while(1)
        {
            printf("父进程, pid:%d, ppid:%d, ret gavl:%d\n",getpid(),getppid(),gavl);
            gavl+=10;
            sleep(1);
        }
    }
    else if(id == 0)
    {
        while(1)
        {
            printf("子进程，pid:%d, ppid:%d, ret gavl:%d\n",getpid(),getppid(),gavl);
            gavl++;
            sleep(1);
        }
    }

    return 0;
}
